home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CD ROM Paradise Collection 4
/
CD ROM Paradise Collection 4 1995 Nov.iso
/
program
/
swags_z.zip
/
SCROLL.SWG
/
0008_BIG Scroller - NEAT!.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1994-01-27
|
1KB
|
47 lines
{
I'm not sure if there're people who are still searching for a _big_ scroll
(meaning bigger than just one line). If so, here's some source:
{ --- cut here --- }
program Simple_Old_TextScroll;
uses crt;
const Sseg : word = $b800; Hi = 17; Txt : string = 'Hello world... ';
var Fseg,Fofs : word; I,Cur,Idx,Line,BitPos : byte;
procedure Getfont; assembler; asm
mov ax,1130h; mov bh,3; int 10h; mov Fseg,es; mov Fofs,bp; end;
procedure Retrace; assembler; asm
mov dx,3dah;
@l1: in al,dx; test al,8; jnz @l1;
@l2: in al,dx; test al,8; jz @l2; end;
begin
GetFont;
Idx := 1;
repeat
Cur := ord(Txt[Idx]);
for BitPos := 0 to 7 do begin
for Line := 0 to 7 do begin
if ((mem[Fseg:Fofs+Cur*8+Line] shl BitPos) and 128) <> 0 then
mem[Sseg:158+(Line+Hi)*160] := 219
else
mem[Sseg:158+(Line+Hi)*160] := 32;
end;
Retrace;
for Line := 0 to 7 do
for I := 0 to 78 do
mem[Sseg:(Line+Hi)*160+I+I] := mem[Sseg:(Line+Hi)*160+I+I+2];
end;
Idx := 1+Idx mod length(Txt);
until keypressed;
end.
{ --- cut here --- }
Keep in mind this thing expects a VGA card with the textmemory at $b800.